Quick start

ABSTRACT

A quick start method for starting up a system easily and quickly is disclosed. A memory control unit reads the start-up data prestored in a storage unit, using auxiliary power supplied from an auxiliary power supply unit. Also, the memory control unit writes the read start-up data into RAM. As well, the memory control unit reads and outputs the start-up data written in RAM when the main power is turned on.

This application is based upon and claims the benefit of priority fromJapanese Patent Application No. 2006-275115 filed on Oct. 6, 2006, thecontent of which is incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a storage device for use in starting upa system comprising a computer and its start-up method.

2. Description of the Related Art

Nowadays, a hard disk is mostly used as a storage device for storing anoperating system or application program (hereinafter referred to asstart-up data) for activating a system comprising a computer or anelectronic computer. Particularly in the personal computers in recentyears, an enormous amount of data is often processed, whereby there is agreat demand for using high capacity hard disks.

The start-up data stored in the hard disk is read from the hard diskwhen the system is started, and written into a memory such as a RAM(Random Access Memory) accessible by a CPU that is the control unit ofthe system. Thereby, the system can perform a predetermined process.

FIG. 1 shows one example of the configuration around a storage unit in atypical system comprising memory control unit 1004, storage unit 1007,I/O control unit 1008, CPU 1009, RAM 1010 and BIOS_ROM 1011. I/O controlunit 1008, CPU 1009, RAM 1010 and BIOS_ROM 1011 are connected to bus1012.

Storage unit 1007 is a mass storage device such as a hard disk thatstores the start-up data for activating the system. Memory control unit1004 controls the reading the start-up data stored in the storage unit1007. I/O control unit 1008 controls each I/O with an I/O instruction tobe executed by CPU 1009. RAM 1010 is a storage area for use when CPU1009 runs a program that includes an operating system. BIOS_ROM 1011 isnon-volatile memory that stores firmware for performing initializationand autonomous diagnosis of the hardware at the time to start thesystem. CPU 1009 is a processor for controlling them.

When the power is turned on in the system having the aboveconfiguration, the start-up data stored in storage unit 1007 is read bymemory control unit 1004. And the system is started using the readstart-up data.

Also, one of the characteristics of a hard disk is that there is acertain probability that failure will occur due to the mechanicalstructure. Therefore, in a computer system such as a server requiringreliability, it is common that a redundant configuration such as dualhard disk is employed.

In view of this background, recently, a system constituting a storagedevice using a non-volatile semiconductor storage element (hereinafterreferred to as a non-volatile memory) represented by a flash memory wasdisclosed in JP-2003-345602A. Thereby, reliability can be improved byremoving the mechanical unit s from the system.

However, non-volatile memory has the drawbacks in which access speed istypically slower than that of a hard disk and the write number isrestricted.

In particular, the slower access speed has a direct influence on thesystem performance not only in starting the operation of loading orsaving the program, but also when the storage device is used as virtualstorage by the operating system. Also, there is the problem that sloweraccess speed influences the start-up time of the device, such as systemboot up, which needs to be as short as possible.

Thus, there is disclosed in JP-2004-030184A a technique for increasingthe speed of the start up operation by storing data, that is stored inthe hard disk, in a memory that is connected to a high speed bus, and byreading data, that is stored in memory, when starting the system.

However, in the technique as described in JP-2004-030184A, there is aproblem that, when the data stored in the hard disk is transferred tomemory that is connected to the high speed bus, the overall system hasto be started up.

SUMMARY OF THE INVENTION

An object of the present invention is to provide a storage device withwhich the system can be quickly and easily started, and also to providea start up method.

In this invention, the start-up data prestored in a non-volatile storageunit is read by a memory control unit, using an auxiliary power which isdifferent from the main power that is used to start up the system. Theread start-up data is written into start-up RAM. And when the main poweris turned on, the start-up data that is written into the start-up RAM isread and output to the system by the memory control unit.

Thereby, the time required for starting the system can be greatlyshortened.

The above and other objects, features, and advantages of the presentinvention will become apparent from the following description withreference to the accompanying drawings which illustrate an example ofthe present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram showing one example of the configuration of astorage unit in a typical system;

FIG. 2 is a diagram showing one exemplary embodiment of a system towhich a storage device of the invention is applied; and

FIG. 3 is a flowchart for explaining a start-up method for the system inthe form as shown in FIG. 2.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring to FIG. 2, a system comprises power supply unit 101, auxiliarypower supply unit 102, sub CPU 103, memory control unit 104, RAM bridge105, RAMs 106 and 1 10, storage unit 107, I/O control unit 108, main CPU109, BIOS_ROM 111 and bus 112. I/O control unit 108, main CPU 109, RAM110 and BIOS_ROM 111 are connected to bus 112.

Power supply unit 101 is a device for converting AC power supplied fromthe outside to DC power supplied to the system or to a battery powereddevice.

Auxiliary power supply unit 102 generates auxiliary power supplyvoltage, based on power supply voltage output from power supply unit101, and supplies the power to each component enclosed by the brokenline in FIG. 1.

The sub CPU 103 is a sub-processor that controls memory control unit 104in a state where only the auxiliary power supply is turned on. Also, itis connected to memory control unit 104, and outputs to memory controlunit 104 instructions for copying the data stored in storage unit 107that has slower access speed from storage unit 107 via RAM bridge 105 toRAM 106.

Memory control unit 104 controls a plurality of storage devicesincluding RAM 106 and storage unit 107 connected lower it in accordancewith an access instruction outputted from I/O control unit 108 or subCPU 103. In general, it is assumed that a control circuit such as an IDE(Integrated Device Electronics) is used.

RAM bridge 105 converts a control signal such as a write signal or aread signal output from memory control unit 104 to a control signal forcontrolling RAM 106 connected lower RAM bridge 105. RAM bridge 105 has afunction of returning information that shows that the storage device cannormally boot the system to memory control unit 104.

RAM 106 is RAM (Random Access Memory) that is a semiconductor memory. Itis the start-up RAM, into which digital data including a boot image readfrom storage unit 107 is written by memory control unit 104, and has astorage area for having the contents while the auxiliary power isapplied.

Storage unit 107 stores start-up data such as an operating system or anapplication program operating on it. Herein, it is a mass storage devicesuch as a hard disk or a silicon disk device using a non-volatilestorage element such as a flash memory.

I/O control unit 108 controls each I/O with an I/O instruction executedby main CPU 109. Herein, I/O control unit 108 takes charge of decodingan access instruction to the storage device, and issuing a controlinstruction to memory control unit 104. Also, a power switch for turningon the main power is connected to I/O control unit 108.

RAM 110 is a storage area for use when main CPU 109 runs a programincluding the operating system after the main power is turned on.

BIOS_ROM 111 is non-volatile memory that stores firmware for performingthe initialization and autonomous diagnosis of hardware when startingthe system.

Main CPU 109 is a central processor for controlling each component asdescribed above.

The components using the auxiliary power include sub CPU 103, memorycontrol unit 104, RAM bridge 105, RAM 106, and storage unit 107 amongthe components as shown in FIG. 2. Also, the components using the mainpower include I/O control unit 108, main CPU 109, RAM 110 and BIOS_ROM111. Also, a portion as indicated by the broken line in FIG. 2corresponds to the storage device of the invention.

Referring to FIG. 3, a start-up method for the system with theconfiguration as shown in FIG. 2 will be described below.

When a power such as AC power is supplied to power supply unit 101 fromthe outside, auxiliary power supply output is determined in auxiliarypower supply unit 102 at step 1, whereby auxiliary power is supplied tosub CPU 103, memory control unit 104, RAM bridge 105, RAM 106 andstorage unit 107. Herein, a secondary side power supply voltage that isthe main power is not output from power supply unit 101 until the powerswitch connected to I/O control unit 108 is turned on.

Then, sub CPU 103 to which the auxiliary power is supplied is started atstep 2. And an instruction for copying the operating system includingthe boot image and the application program running on it stored instorage unit 107 from storage unit 107 via RAM bridge 105 to RAM 106 isoutput from sub CPU 103 to memory control unit 104. And the operatingsystem including the boot image and the application program running onit are copied from storage unit 107 via RAM bridge 105 to RAM 106 bymemory control unit 104 at step 3.

Thereafter, it is determined at step 4 whether the power switchconnected to I/O control unit 108 is turned on. The power switch may bemonitored at a preset period to check whether it is turned on. Bychanging the predetermined signal at the time that the power switch isturned on, it is possible to detect whether the power switch is turnedon. This judgement will continue until the power switch is turned on.

When it is judged that the power switch connected to I/O control unit108 is turned on, a power-on signal is output from I/O control unit 108to power supply unit 101. This power-on signal, for which no particularsignal format has been specified here, needs to be capable recognizingthat the power has been turned on. And when the power-on signal is inputinto the power supply unit 101, the secondary side power supply voltagethat is the main power is output from power supply unit 101 to I/Ocontrol unit 108, main CPU 109, RAM 110, and BIOS_ROM 111 at step 5.

When the secondary side power supply voltage is supplied to eachcomponent, main CPU 109 is activated at step 6, whereby theinitialization and autonomous diagnosis of the hardware is performed,using data stored in BIOS_ROM 111.

Thereafter, at step 7, the operating system including the boot image andthe application program running on it, which are stored in RAM 106, areread by memory control unit 104, and are output via I/O control unit 108onto bus 112, so that the image boot is executed as the system.

Thereby, the time required for system start-up can be greatly shortenedas compared with booting up from storage unit 107 that has typicallyslower access speed.

Herein, the time required for copying the operating system including theboot image and the application program running on it from storage unit107 into RAM 106 may be very long. In this case, this problem can beavoided if the data copied from storage unit 107 to RAM 106 is limitedto the minimum data needed for the system boot and if the remaining datais copied when or after the system is started. Or a method foroutputting no secondary side power supply voltage after the completionof copying may be employed.

And the system becomes operable at step 8. While the operating systemand the application program are operating, in general, access to thestorage device occurs frequently. For example, the program load and saveoperations and access to virtual memory by the operating system areperformed. In this invention, RAM16 is the storage device that isrecognized by the system, and the operating system and applicationprogram must access RAM106 which has the same high speed access as anormal storage device. Thereby, it is unnecessary to considerimprovement of the access speed, or limitation of the write number thatis a problem which arises when a semiconductor storage element such asflash memory is employed as the storage device.

Thereafter, when the system is shut down at step 9, the secondary sidepower supply voltage output that is the main power is turned OFF at step10, but the state of RAM 106 is maintained by the auxiliary power toenable a fast system boot to be made when the main power is turned onthe next time.

In the typical operation, once the primary side power supply voltage ofpower supply unit 101 is turned on, the power switch or the systemcontrols a power-on signal, and regulates only the secondary side powersupply voltage to turn on or off the system power. That is, auxiliarypower supply unit 102 continues to operate as long as the primary sidepower supply voltage is turned on, and the contents stored in RAM 106are maintained using auxiliary power that is output from auxiliary powersupply unit 102 Thereby, when the power switch is turned on the nexttime, a fast system boot is enabled without again implementing thecopying process from storage unit 107 to RAM 106, which was previouslyimplemented.

Also, in a typical operating system in which the typical storage deviceis used as virtual storage, to reduce the probability of causing diskswap, the main memory capacity is increased for the purpose of improvingsystem performance. However, in the present invention, RAM having highaccess speed is used as the storage device. Thereby, even when thestorage device is used as virtual storage, performance degradation canbe minimized. Therefore, even when a number of disk swaps occur due to amultitasking operation, performance degradation can be minimized.

Though RAM bridge 105 is connected to memory control unit 104 in FIG. 2,another pair of RAM bridge and RAM may be connected to memory controlunit 104. In this configuration, the contents stored in each RAM unitcan be mirrored mutually to improve reliability.

While an exemplary embodiment of the present invention has beendescribed in specific terms, such description is for illustrativepurpose only, and it is to be understood that changes and variations maybe made without departing from the spirit or scope of the followingclaims.

1. A storage device comprising: a non-volatile storage unit forprestoring start-up data that is an operating system including a bootimage and an application program running on it to start up a system; anauxiliary power supply unit for supplying auxiliary power, which isdifferent from a main power for use in starting up said system, to saidstorage device; start-up RAM for storing said start-up data using saidauxiliary power; and a memory control unit for reading the start-up dataprestored in said storage unit and writing it into said start-up RAMwhen the auxiliary power is supplied, using said auxiliary power, andreading the start-up data written in said start-up RAM and outputting itto said system when said main power is turned on.
 2. The storage deviceaccording to claim 1, comprising a plurality of said start-up RAMs,wherein said memory control unit writes the same start-up data in saidplurality of start-up RAMs.
 3. A method for starting a system usingstart-up data stored in a storage device having start-up RAM,comprising: supplying auxiliary power, which is different from, mainpower for use in starting up said system, to said storage device;reading said start-up data from a storage unit, prestoring said start-updata, using said auxiliary power; writing said read start-up data intosaid start-up RAM, using said auxiliary power; reading the start-up datawritten into said start-up RAM when said main power is turned on; andoutputting the start-up data read from said start-up RAM to said system.4. The method according to claim 3, further comprising writing thestart-up data read from said storage unit into each of a plurality ofsaid start-up RAMs.